<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
// [js] js中=、==、===三个的区别是什么？并说明它们各自的工作过程

= 是 赋值操作符。执行顺序是从右到左， 比如 a = b = c，先执行 b = c，再执行 a = b。结合其它算术运算符就是复合赋值运算符比如： +=，-=，*=。a += b 等价于 a = a + b，其它复合赋值运算符类似。

== 在 js 中叫 不严格等于。和其它语言不一样，其它语言比如 java 中的 == 和 js 中的 === 更像。js 中的 == 也是用来比较左右操作数是否相等，但是它在比较时会自动进行类型转换，不严格。举个例子 '' == false 返回的结果是 true，左右都被转换成数字进行比较 Number('') 和 Number(false) 都返回 0，所以相等。

=== 在 js 中叫 严格等于。没什么可说的，就是严格比较左右两个操作数的相等性，0 === false 结果是 false。

建议：平时编码应该尽量使用 === 而不是 == 避免因为自动类型转换带来的逻辑 bug。
</script>
</html>